package com.joolun.tennis.mapper;

import java.util.List;
import com.joolun.tennis.domain.CoachClub;
import org.apache.ibatis.annotations.Param;

/**
 * 教练俱乐部关联Mapper接口
 * 
 * @author tennisport.cn
 * @date 2022-03-17
 */
public interface CoachClubMapper 
{
    /**
     * 查询教练俱乐部关联
     * 
     * @param id 教练俱乐部关联ID
     * @return 教练俱乐部关联
     */
    public CoachClub selectCoachClubById(Long id);

    /**
     * 查询教练俱乐部关联列表
     * 
     * @param coachClub 教练俱乐部关联
     * @return 教练俱乐部关联集合
     */
    public List<CoachClub> selectCoachClubList(CoachClub coachClub);

    /**
     * 新增教练俱乐部关联
     * 
     * @param coachClub 教练俱乐部关联
     * @return 结果
     */
    public int insertCoachClub(CoachClub coachClub);

    /**
     * 修改教练俱乐部关联
     * 
     * @param coachClub 教练俱乐部关联
     * @return 结果
     */
    public int updateCoachClub(CoachClub coachClub);

    /**
     * 删除教练俱乐部关联
     * 
     * @param id 教练俱乐部关联ID
     * @return 结果
     */
    public int deleteCoachClubById(Long id);

    /**
     * 批量删除教练俱乐部关联
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteCoachClubByIds(Long[] ids);

    /**
     * 批量删除教练俱乐部关联
     *
     * @param coachIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteCoachClubByCoachIds(Long[] coachIds);
    /**
     * 批量删除教练俱乐部关联
     *
     * @param clubIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteCoachClubByclubIds(Long[] clubIds);

    /**
     * 查询教练俱乐部关联是否存在
     *
     * @param coachId 教练ID
     * @param clubId 俱乐部ID
     * @return 记录条数
     */
    public int selectCoachClub(@Param("clubId") Long clubId, @Param("coachId")Long coachId);

    /**
     * 删除教练俱乐部关联
     *
     * @param coachId 教练ID
     * @param clubId 俱乐部ID
     * @return 记录条数
     */
    public int deleteCoachClubByCoachId( @Param("coachId")Long coachId,@Param("clubId") Long clubId);
}
